//
//  AppGlobal.h
//  XiaoMiao
//
//  Created by 23 on 2017/11/22.
//  Copyright © 2017年 smallyou. All rights reserved.
//

#import <Foundation/Foundation.h>

typedef void(^alterCancelBlock)(void);

@interface AppGlobal : NSObject



+ (NSString *)currentVersion;

/**
 *  获取 app icon 的图片名
 */
+ (NSString *)appIconImageNamed;


#pragma mark - 用户用户模块
//////////////////////////////////用户模块//////////////////////////////////

/**获取网络状态*/
+ (YYReachabilityStatus)getNetworkStatus;

/**
 更新登录状态

 @param isLogin 是否登录
 */
+ (void)updateLoginStatus:(BOOL)isLogin;

/**
 判断是否登录

 @return 是否登录
 */
+ (BOOL)isLogin;

/**
 退出
 */
+ (void)logout;

/**获取设备号*/
+ (NSString *)getDeviceToken;
/**更新设备号**/
+ (void)updateDeviceToken:(NSString *)DeviceToken;
/**获取会话id*/
+ (NSString *)getSid;

/**更新会话id*/
+ (void)updateSid:(NSString *)sid;

/**登录账号相关操作*/
+ (NSString *)getLoginAccount;
+ (void)updateLoginAccount:(NSString *)account;
+ (void)clearLoginAccount;

/**登录密码相关操作*/
+ (NSString *)getLoginPwd;
+ (void)updateLoginPwd:(NSString *)pwd;
+ (void)clearLoginPwd;

#pragma mark - 权限判断
//////////////////////////////////用户模块//////////////////////////////////

/**
 判断是否有相机权限

 @return 是否有权限
 */
+ (BOOL)isCameraDeviceAvalableSureBlock:(void(^)(void))SureBlock;

+ (BOOL)isCameraDeviceAvalable;

/**
 判断是否有相册访问权限

 @return 是否有权限
 */
+ (BOOL)isAssetsLibraryAvalable;

#pragma mark - 匹配 or 验证 (比如身份证、电话的验证等)
/**
 *  匹配身份证是否有效的, 如果无效返回错误信息
 *
 *  @param IDCard 身份证号
 *
 *  @return 身份不匹配的原因(作为弹框提示语), 字符串长度==0表示身份证是正确的
 */
+ (NSString *)matchingIDCard:(NSString *)IDCard;

/**
 *  身份证是否和填写出生日期匹配
 *
 *  @param idCard  身份证号
 *  @param dobDate 出生日期 xxxx-xx-xx格式
 */
+ (BOOL)isMatchingWithIdCard:(NSString *)idCard dobDate:(NSString *)dobDate;

/**
 *  匹配手机号是否有效的
 */
+ (BOOL)isMatchingMobile:(NSString *)mobile;
@end
